EclipseLink is an object-persistence and object-transformation framework that provides development tools and run-time capabilities which can reduce development and maintenance efforts, and increase enterprise application functionality. An implementation of the Java Persistence API (JPA) framework is provided by Eclipselink, which enables java classes and objects to be stored in data sources, allowing information to be used across sessions. Using EclipseLink, software applications can be built which store persistent object-oriented data in a relational database; and can be used to transform object-oriented data into either relational data or Extensible Markup Language (XML) elements.
Applications developed using EclipseLink can be configured to support multitenancy. In multitenant applications, multiple different users (i.e. tenants) can utilize the application. These different users may represent varied businesses with particular needs. A software application may be developed generically, with several default properties or attributes which are broadly applicable to many users. However, these default properties may be insufficient to adequately capture all of the data relevant to a particular user. Data for each tenant needs to be stored such that it remains tenant-specific, while not requiring complete reconfiguration of the multitenant system when tenants are added or removed.